#pragma once

#include <H3D/H3DForceEffect.h>
#include <H3D/SFVec3f.h>
#include <H3D/SFFloat.h>
#include <H3D/SFInt32.h>

namespace H3D
{
	class RepelForceEffect: public H3DForceEffect
	{
	
	public:
		RepelForceEffect::RepelForceEffect(
			Inst<SFVec3f> _pos = 0,
            Inst<SFFloat> _force = 0,
			Inst<SFFloat> _radius = 0,
            Inst<SFInt32> _deviceIndex = 0);

		auto_ptr<SFVec3f> pos;
		auto_ptr<SFFloat> force;
		auto_ptr<SFFloat> radius;
		auto_ptr<SFInt32> deviceIndex;

		virtual void traverseSG(TraverseInfo &ti);
		
		static H3DNodeDatabase database;
	};
}